/*
 * Powered By [Seven]
 * Since 2016 - 2019
 */


package com.czmh.etc.onlinepubsys.model;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;

@Entity
@Table(name = "etc_ecardcallbackpage")
public class EtcEcardcallbackpage extends BaseModel {
	
	//alias
	public static final String TABLE_ALIAS = "EtcEcardcallbackpage";
	public static final String ALIAS_ECARDAPPLY_ID = "主键ID";
	public static final String ALIAS_BANK_TYPE = "银行代码";
	public static final String ALIAS_TRACKCODE = "跟踪代码";
	public static final String ALIAS_VER = "版本号";
	public static final String ALIAS_CHANNEL = "合作方的渠道标识,该值由行方生成并提供给合作方";
	public static final String ALIAS_REQUESTID = "请求流水号";
	public static final String ALIAS_REQUESTTIME = "请求时间戳";
	public static final String ALIAS_APPLYSTATUS = "申请提交状态 1：申请提交成功 3:  系统异常提交失败 4： 已持卡客户 5：6个月内线上重复申请客户 0：其他 1为提交成功，其余都为提交失败类";
	public static final String ALIAS_SERIALNUM = "合作方流水号";
	public static final String ALIAS_RECORDID = "银行申请流水号";
	public static final String ALIAS_CARDPROID = "卡产品Id";
	public static final String ALIAS_ATTACH = "附加数据";
	 
	@Id
	@Column(name = "ecardapply_id")
	private String ecardapply_id;
	@Column(name = "bank_type")
	private String bank_type;
	@Column(name = "trackcode")
	private String trackcode;
	@Column(name = "ver")
	private String ver;
	@Column(name = "channel")
	private String channel;
	@Column(name = "requestid")
	private String requestid;
	@Column(name = "requesttime")
	private String requesttime;
	@Column(name = "applystatus")
	private String applystatus;
	@Column(name = "serialnum")
	private String serialnum;
	@Column(name = "recordid")
	private String recordid;
	@Column(name = "cardproid")
	private String cardproid;
	@Column(name = "attach")
	private String attach;
	@Column(name = "userId")
	private String userId;
	//columns END

	public EtcEcardcallbackpage(){
	}

	public EtcEcardcallbackpage(
		String ecardapply_id
	){
		this.ecardapply_id = ecardapply_id;
	}

	public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    /**  
	 * 设置主键ID  
	 * @param ecardapply_id 主键ID  
	 */  
	public void setEcardapply_id(String ecardapply_id) {
		this.ecardapply_id = ecardapply_id;
	}
	
	/**  
	 * 获取主键ID   
	 * @return ecardapply_id 主键ID   
	 */
	public String getEcardapply_id() {
		return this.ecardapply_id;
	}
	/**  
	 * 设置银行代码  
	 * @param bank_type 银行代码  
	 */  
	public void setBank_type(String bank_type) {
		this.bank_type = bank_type;
	}
	
	/**  
	 * 获取银行代码   
	 * @return bank_type 银行代码   
	 */
	public String getBank_type() {
		return this.bank_type;
	}
	/**  
	 * 设置跟踪代码  
	 * @param trackcode 跟踪代码  
	 */  
	public void setTrackcode(String trackcode) {
		this.trackcode = trackcode;
	}
	
	/**  
	 * 获取跟踪代码   
	 * @return trackcode 跟踪代码   
	 */
	public String getTrackcode() {
		return this.trackcode;
	}
	/**  
	 * 设置版本号  
	 * @param ver 版本号  
	 */  
	public void setVer(String ver) {
		this.ver = ver;
	}
	
	/**  
	 * 获取版本号   
	 * @return ver 版本号   
	 */
	public String getVer() {
		return this.ver;
	}
	/**  
	 * 设置合作方的渠道标识,该值由行方生成并提供给合作方  
	 * @param channel 合作方的渠道标识,该值由行方生成并提供给合作方  
	 */  
	public void setChannel(String channel) {
		this.channel = channel;
	}
	
	/**  
	 * 获取合作方的渠道标识,该值由行方生成并提供给合作方   
	 * @return channel 合作方的渠道标识,该值由行方生成并提供给合作方   
	 */
	public String getChannel() {
		return this.channel;
	}
	/**  
	 * 设置请求流水号  
	 * @param requestid 请求流水号  
	 */  
	public void setRequestid(String requestid) {
		this.requestid = requestid;
	}
	
	/**  
	 * 获取请求流水号   
	 * @return requestid 请求流水号   
	 */
	public String getRequestid() {
		return this.requestid;
	}
	/**  
	 * 设置请求时间戳  
	 * @param requesttime 请求时间戳  
	 */  
	public void setRequesttime(String requesttime) {
		this.requesttime = requesttime;
	}
	
	/**  
	 * 获取请求时间戳   
	 * @return requesttime 请求时间戳   
	 */
	public String getRequesttime() {
		return this.requesttime;
	}
	/**  
	 * 设置申请提交状态 1：申请提交成功 3:  系统异常提交失败 4： 已持卡客户 5：6个月内线上重复申请客户 0：其他 1为提交成功，其余都为提交失败类  
	 * @param applystatus 申请提交状态 1：申请提交成功 3:  系统异常提交失败 4： 已持卡客户 5：6个月内线上重复申请客户 0：其他 1为提交成功，其余都为提交失败类  
	 */  
	public void setApplystatus(String applystatus) {
		this.applystatus = applystatus;
	}
	
	/**  
	 * 获取申请提交状态 1：申请提交成功 3:  系统异常提交失败 4： 已持卡客户 5：6个月内线上重复申请客户 0：其他 1为提交成功，其余都为提交失败类   
	 * @return applystatus 申请提交状态 1：申请提交成功 3:  系统异常提交失败 4： 已持卡客户 5：6个月内线上重复申请客户 0：其他 1为提交成功，其余都为提交失败类   
	 */
	public String getApplystatus() {
		return this.applystatus;
	}
	/**  
	 * 设置合作方流水号  
	 * @param serialnum 合作方流水号  
	 */  
	public void setSerialnum(String serialnum) {
		this.serialnum = serialnum;
	}
	
	/**  
	 * 获取合作方流水号   
	 * @return serialnum 合作方流水号   
	 */
	public String getSerialnum() {
		return this.serialnum;
	}
	/**  
	 * 设置银行申请流水号  
	 * @param recordid 银行申请流水号  
	 */  
	public void setRecordid(String recordid) {
		this.recordid = recordid;
	}
	
	/**  
	 * 获取银行申请流水号   
	 * @return recordid 银行申请流水号   
	 */
	public String getRecordid() {
		return this.recordid;
	}
	/**  
	 * 设置卡产品Id  
	 * @param cardproid 卡产品Id  
	 */  
	public void setCardproid(String cardproid) {
		this.cardproid = cardproid;
	}
	
	/**  
	 * 获取卡产品Id   
	 * @return cardproid 卡产品Id   
	 */
	public String getCardproid() {
		return this.cardproid;
	}
	/**  
	 * 设置附加数据  
	 * @param attach 附加数据  
	 */  
	public void setAttach(String attach) {
		this.attach = attach;
	}
	
	/**  
	 * 获取附加数据   
	 * @return attach 附加数据   
	 */
	public String getAttach() {
		return this.attach;
	}

	public String toString() {
		return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
			.append("ecardapply_id",getEcardapply_id())
			.append("bank_type",getBank_type())
			.append("trackcode",getTrackcode())
			.append("ver",getVer())
			.append("channel",getChannel())
			.append("requestid",getRequestid())
			.append("requesttime",getRequesttime())
			.append("applystatus",getApplystatus())
			.append("serialnum",getSerialnum())
			.append("recordid",getRecordid())
			.append("cardproid",getCardproid())
			.append("attach",getAttach())
			.toString();
	}
	
	public int hashCode() {
		return new HashCodeBuilder()
			.append(getEcardapply_id())
			.toHashCode();
	}
	
	public boolean equals(Object obj) {
		if(obj instanceof EtcEcardcallbackpage == false) {
			return false;
		}
		if(this == obj) {
			return true;
		}
		EtcEcardcallbackpage other = (EtcEcardcallbackpage)obj;
		return new EqualsBuilder()
			.append(getEcardapply_id(),other.getEcardapply_id())
			.isEquals();
	}
}

